/*
 * @Author: CJF
 * @Email: 1757818940@qq.com
 * @Date: 2022-02-24 16:20:40
 * @LastEditTime: 2022-02-25 21:37:37
 * @Description: 
 */
import Vue from 'vue'
import Vuex from 'vuex'
import persistedState from 'vuex-persistedstate'
Vue.use(Vuex)
const store=new Vuex.Store({
    plugins: [
        // 注册插件
        // 我们的数据都是用户登录以后才有的数据，应该为一个会话数据，所以应该存在sessionStorage中
        persistedState({
            // 指定存储数据的位置
            storage: window.sessionStorage
        })
    ],
    //模块化开发
    modules:{
      //命名空间
      welfareah:{
        namespaced:true,
        //托管数据
        state:{
            token:'',
            userinfo:{},
            loginadv:true,
            goods:[]
        },
        //暴露方法
        getters:{
           getToken(_state){
             return _state.token
           },
           getUserinfo(_state){
             return _state.userinfo
           }, 
           getLoginAdv(_state){
            return  _state.loginadv
          },
          getdoods(_state){
            return _state.goods
          }
        },
        //数据扭转
        mutations:{
           setToken(_state,_data){
             _state.token = _data
           },
           setUserinfo(_state,_data){
             _state.userinfo = _data
           },
           setLoginAdv(_state,_data){
            _state.loginadv=_data
        },
        setgoods(_state,_goods){
          _state.goods.push(_goods)

          console.log('vuex数据》》》》》》'+_state.goods);

          console.log(_state.goods);
        },
        changegoods(_state,data){
                 _state.goods=data

        }
        },
        //异步
        actions:{

        }
      }
    }
  })
  export default store
  